iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 11
0
Mobile Development

《菜鳥のSwift》持續30天開發挑戰系列 第 11

《DAY 11》不使用 segue 傳遞參數

  • 分享至 

  • xImage
  •  

之前曾經想過如何不利用 segue 就可以跳轉畫面並且傳遞參數,今天終於做出來了!

我的 SecondViewController.swift 內宣告了一個 str(字串),而 ViewController.swift 程式如下。

import UIKit

class ViewController: UIViewController {
    
    @IBOutlet weak var inputString: UITextField!
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        
    }
    
    @IBAction func toSecondView(_ sender: Any) {
        let myS = UIStoryboard(name: "Main", bundle: nil)
        let vc = myS.instantiateViewController(identifier: "SecondViewController") as! SecondViewController
        vc.str = inputString.text
        show(vc, sender: nil)
    } // 按下按鈕進行傳值跳頁

}
  • 跟之前這篇的差異是把 vc 強制轉型態成 SecondViewController,如此一來就能取得 SecondViewController 下的 str(字串),再進行跳轉畫面。

  • 當兩個 ViewController 分別在不同的 storyboard 時,將無法用 segue 進行傳值,就有使用上面方法的必要。


上一篇
《DAY 10》在畫面之間傳遞參數(下)
下一篇
《DAY 12》使用導覽控制器
系列文
《菜鳥のSwift》持續30天開發挑戰30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言